package org.song.service;

import org.song.model.dto.BlogDto;
import org.song.model.vo.Blog;
import org.springframework.lang.NonNull;
import org.springframework.lang.Nullable;

import java.util.List;

public interface BlogService {

    /**
     * 查询所有博客信息
     * @param blogDto
     * @return
     */
    @NonNull
    List<Blog> listBlogs(@NonNull BlogDto blogDto);

    /**
     * 根据博客信息删除指定博客
     * @param blog
     * @return
     */
    @NonNull
    Integer deleteBlog(@NonNull Blog blog);

    /**
     * 根据博客信息插入一条博客数据
     * @param blog
     * @return
     */
    @NonNull
    Integer insertBlog(@NonNull Blog blog);

    /**
     * 更新博客
     * @param blog
     * @return
     */
    @NonNull
    Integer updateBlog(@NonNull Blog blog);

    /**
     * 博客主页模糊搜索
     * @param queryParam
     * @return
     */
    @NonNull
    List<Blog> blurrySearchBlogs(@Nullable String queryParam);
}
